引言
昨天完成了最基本的一題,學了一些基本操作。
cat, wget 等,都是必備的工具,一定要學起來~
命令 | 簡介 |
---|---|
cat | 查看檔案內容 |
wget | 下載檔案 |
General Skills / Python Wrangling
我們來解第二題,來看看題目:
題目提供了3個檔案,要先右鍵複製網址,用 wget 把它們都下載下來:
連結名 | 下載的檔案 |
---|---|
this Python script | ende.py |
this password | pw.txt |
the flag | flag.txt.en |
我們看看那兩個文字檔案:
$ cat pw.txt
192ee2db192ee2db192ee2db192ee2db
$ cat flag.txt.en
gAAAAABgUAIVX7N_dNxY0j5lWtsDEN2b-h0mN-Lyhm_9QaEdwFK4em1kGiAV52ewbKv8wZJL2QwecZ7kTsVQ11PYEL3BJLD4LVyKrCKAvTFu5-1yuNGFAXKBY8GO3nIReXuOUbaSwVHl
看起來像加密過的亂碼,沒關係我們先看看那個 .py 檔:
$ python ende.py
Usage: ende.py (-e/-d) [file]
表示需要輸入一個檔案,參數選項 -e, -d
可以猜得到是 encoding 與 decoding 的意思,
我們要做的是 decoding 解密,所以輸入參數如下:
$ ende.py -d flag.txt.en
然後程式會顯示:
Please enter the password:
這時將 pw.txt 中的密碼貼上:
picoCTF{4p0110_1n_7h3_h0us3_192ee2db}
順利得到 flag ~
小結
這題沒有什麼新技術,主要是教大家要怎麼處理拿到手的檔案,
通常遇到文字檔可以先看看內容,而執行檔可以試著執行看看,
或是加上參數 --help
看看使用教學,
Python 檔也可以視為間接的執行檔,但你可以直接打開 .py 檔案看看程式碼,就可以大致了解它在做什麼。而這題剛好有給
--help
參數,你可以python ende.py --help
來看說明,甚至這題直接執行它也會告訴你該怎麼執行才是正確的。
而這個 --help
參數是幾乎每個命令都會有的,
可以視為潛規則,如果遇到新的、沒看過的命令,
你都可以先加上一個 --help
來看使用說明,
例如:
$ wget --help
今天就講到這裡~